/* ******************************************************************
 * This file is part of the escal project and distributed under the
 * terms of the GNU General Public License Version 3
 * Copyright (C) 2008 Epocher (xijiaosdq@gmail.com)
 * See COPYING file for licensing information.
 *******************************************************************/

#ifndef ESCAL_H
#define ESCAL_H

#define ServerPort 37777
#define PieceSize 100000
#define MAX_THREAD_NUM 10
#define DigestFileSuffix ".esl"
#include <QtDebug>

class QDir;
class LogManager;
class EscalSettings;
class Initializer;

namespace Escal {
	extern QString binaryFilePath;
	extern QString escalHome;
	extern QString dataHome;
	extern QDir *homeDir;
	extern QDir *dataDir;
	extern EscalSettings *settings;
	extern Initializer *eInit;
	extern LogManager *logManager;
	enum UN_TASK_COLUMNS {UN_FILENAME, UN_LENGTH, UN_REMAIN, 
		UN_SPEED, UN_PROGRESS,
		UN_RESOURCE, UN_STATUS, UN_TIMELEFT};
	enum DN_TASK_COLUMNS {DN_FILENAME, DN_LENGTH, DN_FOLDERNAME,
		DN_SOURCEURL};
	enum Client_Message_Type {
		CMT_NEW_URL = 100
	};
	enum Server_Message_Type {
		SMT_OK = 100
	};

}

#endif /* ESCAL_H */
